#！/usr/bin/python
# coding:UTF-8
import sys
import os
import pandas as pd
from tqdm import tqdm
import func
import user_config as ucfg

def check_files_exist():
    #判断目录和文件是否存在，存在则直接删除
    filePath = [ucfg.tdx['csv_day'], ucfg.tdx['csv_index'],ucfg.tdx['pickle']]
    if os.path.exists(ucfg.tdx['csv_day']) or os.path.exists(ucfg.tdx['csv_index']):
        if 'del' in str(sys.argv[1:]):
            for item in filePath:
                for root,dirs,files in os.walk(item, topdown=False):
                    for name in files:
                        os.remove(os.path.join(root,name))
                    for name in dirs:
                        os.rmdir(os.path.join(root,name))
            try:
                for item in filePath:
                    os.mkdir(item)
            except FileExistsError:
                print('Error:目录已存在')
    else:
        for item in filePath:
            os.mkdir(item)
def update_1day():
    #读取正常交易状态的股票
    tdx_stocks = pd.read_csv(ucfg.tdx['tdx_path']+'/T0002/hq_cache/infoharbor_ex.code',
        dtype={0:str},header=None,index_col=None,encoding='gbk',sep="|")
    file_listsh = tdx_stocks[0][tdx_stocks[0].apply(lambda x: x[0:1] =='6')]
    file_listsz = tdx_stocks[0][tdx_stocks[0].apply(lambda x: (x[0:1] !='6') & (x[0:1] != '3'))]
    print('已获取列表，开始处理数据')
    print('处理沪市数据')
    # for f in tqdm(file_listsh):
    #     f= 'sh'+f+'.day'
    #     if os.path.exists(ucfg.tdx['tdx_path']+ '/vipdoc/sz/lday' + f):
    #         func.day2csv(ucfg.tdx['tdx_path']+ '/vipdoc/sz/lday', f, ucfg.tdx['csv_1day'])
    func.day2csv(ucfg.tdx['tdx_path']+ '/vipdoc/sz/lday', 'sz002185.day', ucfg.tdx['csv_day'])
    
def qfq():
    pass

if __name__ == '__main__':
    print('执行本文件，可以带参数 del，表示删除现有文件并重新生成完整数据')
    print('参数列表：', str(sys.argv[1:]))
    print('脚本名：', str(sys.argv[0]))
    print('主程序开始')
    check_files_exist()
    update_1day()
    print('文件处理完成')
    print('处理生成的日线数据，复权加工代码')

    print('多进程处理')

